package com.example.demo2.service.impl;

import com.example.demo2.dao.TestMapper;
import com.example.demo2.service.ITestCase3Service;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;

import static com.example.demo2.utils.HttpUtils.check;

@Slf4j
@Service
public class TestCase3ServiceImpl implements ITestCase3Service {
    @Autowired
    private TestMapper testMapper;

    @Transactional
    @Override
    public void case3Do() {
        log.info("插入一条数据");
        // 插入一条数据
        testMapper.insert("case3");
        // 查看当前数据库的数据
        check();
        log.info("删除一条数据");
        // 删除一条数据
        testMapper.delete("case3");
        // 查看当前数据库的数据
        check();
        log.info("插入之后数据不可以直接在其他事物中查到");
    }

    @Override
    public void case3Do2() {
        log.info("插入一条数据");
        // 插入一条数据
        testMapper.insert("case3");
        // 查看当前数据库的数据
        check();
        log.info("删除一条数据");
        // 删除一条数据
        testMapper.delete("case3");
        // 查看当前数据库的数据
        check();
        log.info("插入之后数据不可以直接在其他事物中查到");
    }
}
